package cn.itcast.pojo;

import java.util.ArrayList;
import java.util.List;

public class temporaryOrderItemExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public temporaryOrderItemExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(Integer value) {
            addCriterion("order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(Integer value) {
            addCriterion("order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(Integer value) {
            addCriterion("order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(Integer value) {
            addCriterion("order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(Integer value) {
            addCriterion("order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<Integer> values) {
            addCriterion("order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<Integer> values) {
            addCriterion("order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(Integer value1, Integer value2) {
            addCriterion("order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(Integer value1, Integer value2) {
            addCriterion("order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andRoughweightIsNull() {
            addCriterion("roughWeight is null");
            return (Criteria) this;
        }

        public Criteria andRoughweightIsNotNull() {
            addCriterion("roughWeight is not null");
            return (Criteria) this;
        }

        public Criteria andRoughweightEqualTo(Double value) {
            addCriterion("roughWeight =", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightNotEqualTo(Double value) {
            addCriterion("roughWeight <>", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightGreaterThan(Double value) {
            addCriterion("roughWeight >", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightGreaterThanOrEqualTo(Double value) {
            addCriterion("roughWeight >=", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightLessThan(Double value) {
            addCriterion("roughWeight <", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightLessThanOrEqualTo(Double value) {
            addCriterion("roughWeight <=", value, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightIn(List<Double> values) {
            addCriterion("roughWeight in", values, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightNotIn(List<Double> values) {
            addCriterion("roughWeight not in", values, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightBetween(Double value1, Double value2) {
            addCriterion("roughWeight between", value1, value2, "roughweight");
            return (Criteria) this;
        }

        public Criteria andRoughweightNotBetween(Double value1, Double value2) {
            addCriterion("roughWeight not between", value1, value2, "roughweight");
            return (Criteria) this;
        }

        public Criteria andTareIsNull() {
            addCriterion("tare is null");
            return (Criteria) this;
        }

        public Criteria andTareIsNotNull() {
            addCriterion("tare is not null");
            return (Criteria) this;
        }

        public Criteria andTareEqualTo(Double value) {
            addCriterion("tare =", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareNotEqualTo(Double value) {
            addCriterion("tare <>", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareGreaterThan(Double value) {
            addCriterion("tare >", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareGreaterThanOrEqualTo(Double value) {
            addCriterion("tare >=", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareLessThan(Double value) {
            addCriterion("tare <", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareLessThanOrEqualTo(Double value) {
            addCriterion("tare <=", value, "tare");
            return (Criteria) this;
        }

        public Criteria andTareIn(List<Double> values) {
            addCriterion("tare in", values, "tare");
            return (Criteria) this;
        }

        public Criteria andTareNotIn(List<Double> values) {
            addCriterion("tare not in", values, "tare");
            return (Criteria) this;
        }

        public Criteria andTareBetween(Double value1, Double value2) {
            addCriterion("tare between", value1, value2, "tare");
            return (Criteria) this;
        }

        public Criteria andTareNotBetween(Double value1, Double value2) {
            addCriterion("tare not between", value1, value2, "tare");
            return (Criteria) this;
        }

        public Criteria andSuttleIsNull() {
            addCriterion("suttle is null");
            return (Criteria) this;
        }

        public Criteria andSuttleIsNotNull() {
            addCriterion("suttle is not null");
            return (Criteria) this;
        }

        public Criteria andSuttleEqualTo(Double value) {
            addCriterion("suttle =", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleNotEqualTo(Double value) {
            addCriterion("suttle <>", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleGreaterThan(Double value) {
            addCriterion("suttle >", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleGreaterThanOrEqualTo(Double value) {
            addCriterion("suttle >=", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleLessThan(Double value) {
            addCriterion("suttle <", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleLessThanOrEqualTo(Double value) {
            addCriterion("suttle <=", value, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleIn(List<Double> values) {
            addCriterion("suttle in", values, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleNotIn(List<Double> values) {
            addCriterion("suttle not in", values, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleBetween(Double value1, Double value2) {
            addCriterion("suttle between", value1, value2, "suttle");
            return (Criteria) this;
        }

        public Criteria andSuttleNotBetween(Double value1, Double value2) {
            addCriterion("suttle not between", value1, value2, "suttle");
            return (Criteria) this;
        }

        public Criteria andUnitpriceIsNull() {
            addCriterion("unitPrice is null");
            return (Criteria) this;
        }

        public Criteria andUnitpriceIsNotNull() {
            addCriterion("unitPrice is not null");
            return (Criteria) this;
        }

        public Criteria andUnitpriceEqualTo(Double value) {
            addCriterion("unitPrice =", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceNotEqualTo(Double value) {
            addCriterion("unitPrice <>", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceGreaterThan(Double value) {
            addCriterion("unitPrice >", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceGreaterThanOrEqualTo(Double value) {
            addCriterion("unitPrice >=", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceLessThan(Double value) {
            addCriterion("unitPrice <", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceLessThanOrEqualTo(Double value) {
            addCriterion("unitPrice <=", value, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceIn(List<Double> values) {
            addCriterion("unitPrice in", values, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceNotIn(List<Double> values) {
            addCriterion("unitPrice not in", values, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceBetween(Double value1, Double value2) {
            addCriterion("unitPrice between", value1, value2, "unitprice");
            return (Criteria) this;
        }

        public Criteria andUnitpriceNotBetween(Double value1, Double value2) {
            addCriterion("unitPrice not between", value1, value2, "unitprice");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(Double value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(Double value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(Double value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(Double value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(Double value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<Double> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<Double> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(Double value1, Double value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(Double value1, Double value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andTransportIsNull() {
            addCriterion("transport is null");
            return (Criteria) this;
        }

        public Criteria andTransportIsNotNull() {
            addCriterion("transport is not null");
            return (Criteria) this;
        }

        public Criteria andTransportEqualTo(Double value) {
            addCriterion("transport =", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotEqualTo(Double value) {
            addCriterion("transport <>", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportGreaterThan(Double value) {
            addCriterion("transport >", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportGreaterThanOrEqualTo(Double value) {
            addCriterion("transport >=", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportLessThan(Double value) {
            addCriterion("transport <", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportLessThanOrEqualTo(Double value) {
            addCriterion("transport <=", value, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportIn(List<Double> values) {
            addCriterion("transport in", values, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotIn(List<Double> values) {
            addCriterion("transport not in", values, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportBetween(Double value1, Double value2) {
            addCriterion("transport between", value1, value2, "transport");
            return (Criteria) this;
        }

        public Criteria andTransportNotBetween(Double value1, Double value2) {
            addCriterion("transport not between", value1, value2, "transport");
            return (Criteria) this;
        }

        public Criteria andDevelopIsNull() {
            addCriterion("develop is null");
            return (Criteria) this;
        }

        public Criteria andDevelopIsNotNull() {
            addCriterion("develop is not null");
            return (Criteria) this;
        }

        public Criteria andDevelopEqualTo(Double value) {
            addCriterion("develop =", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopNotEqualTo(Double value) {
            addCriterion("develop <>", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopGreaterThan(Double value) {
            addCriterion("develop >", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopGreaterThanOrEqualTo(Double value) {
            addCriterion("develop >=", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopLessThan(Double value) {
            addCriterion("develop <", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopLessThanOrEqualTo(Double value) {
            addCriterion("develop <=", value, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopIn(List<Double> values) {
            addCriterion("develop in", values, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopNotIn(List<Double> values) {
            addCriterion("develop not in", values, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopBetween(Double value1, Double value2) {
            addCriterion("develop between", value1, value2, "develop");
            return (Criteria) this;
        }

        public Criteria andDevelopNotBetween(Double value1, Double value2) {
            addCriterion("develop not between", value1, value2, "develop");
            return (Criteria) this;
        }

        public Criteria andAccessorylistIsNull() {
            addCriterion("accessoryList is null");
            return (Criteria) this;
        }

        public Criteria andAccessorylistIsNotNull() {
            addCriterion("accessoryList is not null");
            return (Criteria) this;
        }

        public Criteria andAccessorylistEqualTo(String value) {
            addCriterion("accessoryList =", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistNotEqualTo(String value) {
            addCriterion("accessoryList <>", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistGreaterThan(String value) {
            addCriterion("accessoryList >", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistGreaterThanOrEqualTo(String value) {
            addCriterion("accessoryList >=", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistLessThan(String value) {
            addCriterion("accessoryList <", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistLessThanOrEqualTo(String value) {
            addCriterion("accessoryList <=", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistLike(String value) {
            addCriterion("accessoryList like", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistNotLike(String value) {
            addCriterion("accessoryList not like", value, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistIn(List<String> values) {
            addCriterion("accessoryList in", values, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistNotIn(List<String> values) {
            addCriterion("accessoryList not in", values, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistBetween(String value1, String value2) {
            addCriterion("accessoryList between", value1, value2, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andAccessorylistNotBetween(String value1, String value2) {
            addCriterion("accessoryList not between", value1, value2, "accessorylist");
            return (Criteria) this;
        }

        public Criteria andFilelistIsNull() {
            addCriterion("fileList is null");
            return (Criteria) this;
        }

        public Criteria andFilelistIsNotNull() {
            addCriterion("fileList is not null");
            return (Criteria) this;
        }

        public Criteria andFilelistEqualTo(String value) {
            addCriterion("fileList =", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistNotEqualTo(String value) {
            addCriterion("fileList <>", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistGreaterThan(String value) {
            addCriterion("fileList >", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistGreaterThanOrEqualTo(String value) {
            addCriterion("fileList >=", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistLessThan(String value) {
            addCriterion("fileList <", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistLessThanOrEqualTo(String value) {
            addCriterion("fileList <=", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistLike(String value) {
            addCriterion("fileList like", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistNotLike(String value) {
            addCriterion("fileList not like", value, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistIn(List<String> values) {
            addCriterion("fileList in", values, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistNotIn(List<String> values) {
            addCriterion("fileList not in", values, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistBetween(String value1, String value2) {
            addCriterion("fileList between", value1, value2, "filelist");
            return (Criteria) this;
        }

        public Criteria andFilelistNotBetween(String value1, String value2) {
            addCriterion("fileList not between", value1, value2, "filelist");
            return (Criteria) this;
        }

        public Criteria andExplIsNull() {
            addCriterion("expl is null");
            return (Criteria) this;
        }

        public Criteria andExplIsNotNull() {
            addCriterion("expl is not null");
            return (Criteria) this;
        }

        public Criteria andExplEqualTo(String value) {
            addCriterion("expl =", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplNotEqualTo(String value) {
            addCriterion("expl <>", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplGreaterThan(String value) {
            addCriterion("expl >", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplGreaterThanOrEqualTo(String value) {
            addCriterion("expl >=", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplLessThan(String value) {
            addCriterion("expl <", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplLessThanOrEqualTo(String value) {
            addCriterion("expl <=", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplLike(String value) {
            addCriterion("expl like", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplNotLike(String value) {
            addCriterion("expl not like", value, "expl");
            return (Criteria) this;
        }

        public Criteria andExplIn(List<String> values) {
            addCriterion("expl in", values, "expl");
            return (Criteria) this;
        }

        public Criteria andExplNotIn(List<String> values) {
            addCriterion("expl not in", values, "expl");
            return (Criteria) this;
        }

        public Criteria andExplBetween(String value1, String value2) {
            addCriterion("expl between", value1, value2, "expl");
            return (Criteria) this;
        }

        public Criteria andExplNotBetween(String value1, String value2) {
            addCriterion("expl not between", value1, value2, "expl");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(String value) {
            addCriterion("type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(String value) {
            addCriterion("type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(String value) {
            addCriterion("type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(String value) {
            addCriterion("type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(String value) {
            addCriterion("type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(String value) {
            addCriterion("type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLike(String value) {
            addCriterion("type like", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotLike(String value) {
            addCriterion("type not like", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<String> values) {
            addCriterion("type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<String> values) {
            addCriterion("type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(String value1, String value2) {
            addCriterion("type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(String value1, String value2) {
            addCriterion("type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeinfoIsNull() {
            addCriterion("typeInfo is null");
            return (Criteria) this;
        }

        public Criteria andTypeinfoIsNotNull() {
            addCriterion("typeInfo is not null");
            return (Criteria) this;
        }

        public Criteria andTypeinfoEqualTo(String value) {
            addCriterion("typeInfo =", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoNotEqualTo(String value) {
            addCriterion("typeInfo <>", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoGreaterThan(String value) {
            addCriterion("typeInfo >", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoGreaterThanOrEqualTo(String value) {
            addCriterion("typeInfo >=", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoLessThan(String value) {
            addCriterion("typeInfo <", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoLessThanOrEqualTo(String value) {
            addCriterion("typeInfo <=", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoLike(String value) {
            addCriterion("typeInfo like", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoNotLike(String value) {
            addCriterion("typeInfo not like", value, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoIn(List<String> values) {
            addCriterion("typeInfo in", values, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoNotIn(List<String> values) {
            addCriterion("typeInfo not in", values, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoBetween(String value1, String value2) {
            addCriterion("typeInfo between", value1, value2, "typeinfo");
            return (Criteria) this;
        }

        public Criteria andTypeinfoNotBetween(String value1, String value2) {
            addCriterion("typeInfo not between", value1, value2, "typeinfo");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}